Software loading plays a significant role in the operation of complex electronic equipment such as cellular telecommunication systems. Within cellular systems, software loading is necessary in several instances. For example, the functionality of modern cellular systems is, to a large extent, controlled by software. One common motivation for software loading is to provide system upgrades in the form of migratory releases of predetermined software packages. Furthermore, functional changes and enhancements may be added and activated by newly installed software. By way of example, an analog network operating on the Advanced Mobile Phone System (AMPS) can be upgraded to a Digital Advanced Mobile Phone System (D-AMPS) with relatively minor hardware modifications which are activated by new software.
FIG. 1 illustrates a current method for loading software in a typical cellular network. A computer terminal 10 used for loading software is coupled to a mobile switching center (MSC) 12. Terminal 10, generally located at the same site as MSC 12, permits loading from a centralized location. MSC 12 is linked to a plurality of base stations by way of a high speed digital connection, such as a pulse code modulation (PCM) link. The PCM link is an optical or wired link capable of efficiently delivering digital data over vast distances in accordance with a specified standard. One widely used standard link is a T1 link 14 which specifies transmission of data at 1.544 Mb/s. Furthermore, the T1 standard specifies the transmission of twenty four timeslots, where one timeslot corresponds to one analog conversation (AMPS) or three conversations in digital mode (D-AMPS). Of the twenty four timeslots, twenty three are used for carrying voice data and one, timeslot 9, is reserved for the transmission of control information. It is desirable to utilize the same transmission link for transporting both voice and software data to maximize efficiency, therefore, timeslot 9 is used to carry software data during loading.
T1 link 14 couples MSC 12 to base station one (BS1) for efficient high speed communication between the components. Base stations typically contain anywhere from eight to seventy two devices wherein each can include, for example, a transmitter and receiver (i.e. transceiver), Location Verification Module (LVM), Radio Frequency Test Loop (RFTL), Combiner Tuner Controller (CTC), or other microprocessor equipped units. The procedure for software loading requires that each of the devices be taken off-line or set in an idle state during loading. This is commonly referred to in the industry as "blocking" the device and must be done sequentially for each device prior to loading. Since it may take anywhere from seconds to several tens of seconds to load each device, it is readily apparent that the software loading may take a significant amount of time. It should be noted that the speed of loading depends greatly on the speed and capacity of the transmission line used. Furthermore, since a typical cellular network contains multiple base stations, each base station will have software loaded in its devices in a similar sequential fashion. In the forgoing example, MSC 12 is coupled to BS2 via T1 link 17 and BS3 is coupled to MSC 12 via T1 link 19. A complete software load for the entire network can take anywhere from several minutes to hours or even days. Thus a major limitation of this methodology is that each device is "forced" out of service for a specific period of time. While out of service, the devices cannot serve traffic thereby depriving cellular operators of potential revenue. Moreover, the current method is cumbersome, inefficient and time consuming thereby prompting the need for a better solution.
In view of the foregoing, it is an objective of the present invention to provide a technique for software loading in cellular telecommunication networks that is efficient and economical by permitting software loading while permitting devices to concurrently serve traffic.